package com.zzw.service;

import com.zzw.model.ModifyStuRequest;
import com.zzw.model.QueryStuResponse;
import com.zzw.model.BaseStudent;

import java.util.List;

/**
 * @author zzw
 * @version 1.0
 * @title StudentManagerService
 * @description <p>学生管理服务接口</p>
 * @datetime 2022-12-28 8:19 下午
 */
public interface StudentManagerService {

    /**
     * 新增学员
     *
     * @param request 请求
     * @return 是否成功 1-是
     */
    boolean addStudent(BaseStudent request);

    /**
     * 删除学员
     *
     * @param stuNo 学号
     */
    void deleteStudent(String stuNo);

    /**
     * 删除所有信息
     */
    void deleteAll();

    /**
     * 更新学员信息
     *
     * @param request 修改请求
     */
    Boolean updateStudent(ModifyStuRequest request);

    /**
     * 查询学员信息
     *
     * @param stuNo 学号
     * @return 学生信息
     */
    QueryStuResponse queryStudent(String stuNo);

    /**
     * 查询所有学员信息
     *
     * @param pageNo   开始页
     * @param pageSize 每页大小
     * @return 学生信息列表
     */
    List<QueryStuResponse> queryAllStudent(int pageNo, int pageSize);
}
